What is it?
This is an Arduino based iPod hack audio project that allows you to select tracks for playback from an attached iPod Touch simply by placing cards on flat upper surface of the machine:

The cards can be placed in small plastic boxes with a picture of the album cover on one side to make small blocks more suitable for small hands to manipulate. Originally designed for disabled child. Since then people, teachers I know and so on, have been urging me to "do something with it" so this is an easier to set up and use quasi "tablet" version.

Much improved from an older attempt to do this with; lower cost components, more compact housing and in particular better software that allows you to directly add new RFID cards without needing an attached PC as you add more music to the iPod playlist - hence the keypad.

Watch the video and what it does will all become clear.

- An iPod Touch controlled by Arduino via the serial protocol intended for use by docking stations and other peripherals.
- RFID (Radio Frequency Identification) cards are embedded in small plastic blocks with album cover art on the face of each block.
- Advanced serial mode is used, giving 2-way communication between Arduino and iPod and ability to select individual tracks by number.
- Place an RFID "block" in the centre of the top surface (or wherever you mount the wireless card reader and the selected album plays automatically, no conventional controls or menus at all.

This video shows it being used with word cards to allow playback of recorded words and phrases from the iPod Touch as communication aid or as an educational device.

This is called "Tangible computing" and allows, for example a disabled child who cannot manipulate small buttons / touchscreens on an MP3 player or use a CD player to select tracks or albums for themselves.

Also gives the user the ability to physically shuffle through a pile of cards to choose the one they want, rather like the experience of sorting through CD's or vinyl albums in case of older readers. It is all about giving control and choice back to the child.

I built a cruder version of this for my daughter over a year ago and she still uses it daily. This one is a lot more practical in terms of how you set it up.

How does it work?
The cards all have an individual unique code number from the factory so when "paired" with a certain track in the iPod playlist of songs, it will always select that track when placed on the top surface of the device. The cards, known as RFID cards, are read wirelessly by a reader hidden inside the machine.

The cards can be placed in small plastic blocks with a picture on the outside as I tend to do, or soft toys, or anything your imagination can come up with.

The idea with this machine was something like a thick iPad that would be portable and could be placed on a table.

Main features:
- It allows you to go into a "setup" mode where you can pair new blank RFID cards with songs in the playlist. The Arduino remembers this pairing the next time it is switched on as the details are retained in a portion of the memory called EEPROM.

- This means instead of me adding all the track info to the Arduino code using a computer as I did before, this time you can add more music and more cards to select the tracks, as and when you want to without ever needing an attached computer. It is configured to remember up to 500 cards.

- The device will play the song you select with the RFID card, and then every song after that in the playlist. Therefore you can set each card to select the first track of an album, or if you prefer, just individual tracks.

- If each mp3 file in the playlist is a recorded word or phrase for example, it could also be used as a communication system or as a teaching aid with the RFID tags inside each of a set of word/picture cards.

NOTE: I live in the United Kingdom but for this parts list I have quoted items from US websites.

Arduino Mega 1280:  $19.99 (same price as an Uno)   Well known online auction site.
ID-12 RFID Reader: $29.95 from Sparkfun.   https://www.sparkfun.com/products/8419
Breakout board for ID-12 RFID reader: $0.95 from Sparkfun.  https://www.sparkfun.com/products/8423
Logic Level Converter: $1.95 from Sparkfun.   https://www.sparkfun.com/products/8745
20 x 4 black on green LCD display: $17.95   from Sparkfun.   https://www.sparkfun.com/products/256
PodBreakout plug/board: $14.95 from Sparkfun.  https://www.sparkfun.com/products/8295
Membrane keypad: $3.95  from Adafruit. http://www.adafruit.com/products/419

Double 10K potentiometer (volume control): $2.95 on well known online auction site.
Single 10K potentiometer (LCD contrast control): $1.00 on well known online auction site.
Single push to make button switch (reset button): $1.00 on well known online auction site.
Stereo headphone socket, panel mount: Approx $2.50

Power supply for Arduino: Suggest 7.5V 1000mA (the 300mA ones sometimes sold for Arduinos are not enough).
Example: AC 100V-240V Converter Adapter DC 7.5V 1A Power Supply EU plug DC 5.5mm × 2.1mm: Approx $5.00
N.B. The RFID allegedly uses "a lot of power" when it is actually in "read" mode. Not sure how much this is but since I am supplying the backlight of my LCD display as well as my RFID reader with 5V power from the on-board voltage regulator on the Mega, I thought it would be best to turn the RFID off most of the time, having it "look" for a new RFID reading every few seconds instead. The Arduino runs at 5V and has an on board voltage regulator to keep everything at 5V. It will run with a DC supply of 7-12V. However at 12V it is converting a lot of that to heat, and if I am also consuming a lot of current with my peripherals, that might not be a great idea. I therefore have used a stabilised (i.e. not a really cheap thrift shop unit) 7V power supply with claimed output of up to 1.5Amps. By using a 7V supply I have enough to keep the Arduino regulator happy without generating masses of unwanted heat.

You will also need some resistors:

1 x 500,000 Ohm.
1 x 10 Ohm.
1 x 1000 Ohm (i.e. 1 K Ohm)
Optionally to make iPod charge itself from Arduino, you also need:
2 x 33k Ohm 
1 x 47k Ohm
1 x 22k Ohm

This machine is designed to have an iPod attached to it.
I have tested it with an iPod Touch 4 which is a readily available current model and also an older iPodTouch 2

You also need some RFID cards. One for each of your albums (or even one per song if you prefer). Can get them on well known auction site in bulk. Make sure you have correct type - the EM4100 family, 125kHz. About $1 each, less if bought 20 or 50 at a time.

Total: Approx $100      (about GBP 67)  - remember that you also need RFID cards, an iPod and a set of headphones, (and/or connection cable to a HiFi amplifier if you prefer).

Here is the main parts list with UK suppliers:
Logic level converter:
PodBreakout board:
4 x 20 LCD green:
Arduino 1280
ID-12 RFID reader:

So, here's how to make one.........................

Step 1: General Layout of Parts

I always build things like this on a slab of wood and spread things out until I get it all working. I would suggest you do the same.

In the case of these photos, I just acquired a MakerBot 3D printer so was trying to print out a flat chassis to hold all the parts in a neat way. You do not have to do this at all, use any enclosure you want to.

My last machine was a small coffee table with the RFID reader just under the top surface, and a cable with the plug for the iPod hanging beneath so the iPod could be kept in a cupboard underneath.

In this photo I have glued the plug for the iPod into a plastic housing so the iPod can then slot in from the top side like a form of docking port.

I will attach the 3D print files at the end for those who are interested but I will say again, you do not have to arrange the various parts like this, I would just start with a wooden board, make life easier for yourself and spread the parts out.

The heart is an Arduino 1280. This the old version of the Arduino "Mega" and is very low cost now. I use it as it has several serial ports and loads of pins so you do not run out. Also has larger memory than the basic Arduino Uno which means it will remember more "paired" cards even when turned off.

The cards are read by a wireless reader called an ID-12 which is very reasonably priced. This reads the 10 digit unique tag number of the card. The arduino then goes through its memory to see which track of the iPod playlist this card is "paired" with. The Arduino then selects that track for playback. It does that by being connected to the iPod via a special plug called a PodBreakout plug made for hackers of Ipods etc.

The track being played is displayed on the 4 row liquid crystal (LCD) display. This display is also used when going through the setup menu to pair new cards with newly added songs or tracks in the iPod playlist.

The logic level converter is a board that converts data at 5V that the Arduino uses, to the 3V standard that the iPod uses so they can talk to each other without damaging each other.

The LED flashes each time the ID-12 attempts to read the RFID card unique number, i.e. every time it "looks" for a new card to see if it has changed.

There is a volume knob, a headphone socket, and a knob which adjusts the contrast of the LCD display.

Finally there is a reset button that restarts the Arduino when pressed.
Good choice of music.
Congratulations on being a finalist in the DIY Audio Contest!! Good luck to you!
This is very very cool! You must be an enthusiast! <br> <br> <br>Could you please tell me what do you use that for? It seems like useable in a bar or somewhere in public events or ...?
Hi, <br> <br>You make a very good point. I made one for my daughter to use with headphones. <br> <br>However, it could quite equally be made in a very nice flat metal case to fit on a table next to a HiFi amplifier and be used as a very unusual iPod dock front end for a music system. <br>Two completely different types of machines and user groups, but based on same internals. <br> <br>I am seriously thinking of putting something based on this concept on Kickstarter. <br> <br>Watch this space. <br> <br>John <br>
If you have no time for do this. I want to share another way to hold business cards forever http://cardfila.com/. When you get Business Card from partners, no need for keeping hard copy ... Just capture by CardFila and the store on Cloud server forever. <br> Capture fast and simple operation (taken ~ 200 cards/10 minutes). Capture any time, any where by Mobile Phone <br> I keep more thousands of business cards on Iphone now. You can do this on Android, computer, laptop. <br>
John, seriously, this is brilliant! <br>This could be used to teach young children to associate images with sound, just print pictures on the card. Or in hospitals for people who can't speak, they would have cards for &quot;Hey Nurse&quot; and &quot;I want more Jello&quot;. There has to be a ton more applications. <br> <br>Are there special education / assistance companies that make this sort of thing that you could pitch it to? I'm sure there would be a demand for it.
Thanks for the encouragement. The problem with the previous one in a coffee table was that to pair the cards with the songs you had to modify the Arduino code each time then reload the Arduino program from your laptop. <br>This one overcomes that with its own setup mode so more closely resembles a product you could actually make for people. At present all though the parts come to around $100 you still have around 10 to 12 hours of work even if you sped up with experience. <br>I would be prepared to make a few for schools for example on an individual basis simply to get some &quot;out there&quot; if they really truly wanted one. <br>Some people do not &quot;get it&quot; when described but when they actually see my daughter using it with her headphones on they see the point right away. <br>I may write an article for a specialist autism magazine to begin with to see if there is any interest. If there is too much interest I would not be able to keep up so need to start off gently. <br>I will add another video clip using spoken words for each card to see what people think.
Dear XenonJohn, <br>your project is wonderful! <br>I would like to work with you to develop the project, is it possible? <br>Please contact me asap. <br>Thank you <br>Simona
If you send me a working email address via this part or a personal message I will email you and we can talk. <br> <br>Best wishes <br> <br>John
Man... I read instructables.com since 2010, and this was really impressive for me! I have never registered, I did it to say that this is fabulous! As Tomdf said, this would be a amazing tool for everything. Keep it going!

About This Instructable




More by XenonJohn:Ardu McDuino: Bagpipe playing robot (chanter) Star Wars Maz Kanata Inspired Glasses Music & lights in childproof case 
Add instructable to: