The general question:

How can I open and close CD-Rom drives (about 20-30) in reaction to various sensor input?

Some more specific questions (based on the assumption that I should to tackle this with an Arduino):

How would I go about figuring out which pins on an IDE connector are the ones that need to receive a signal?

How would I figure out what signal needs to be sent to those pins? And how would I make an arduino send that signal?

Some context:

I'm working on a pine tree kinetic sculpture made of old CD-ROM drives. Basically, each "branch" of the tree is a CD-ROM drive pointing away from the trunk. The drives will open and close based on feedback via:

  1. A microphone. An algorithm would open and close the drives based on analysis of the audio input. One idea, blowing into the mic (like the wind) would simulate the wind blowing pine tree limbs (they would shutter open and close)
  2. Alternate (or perhaps complementary input): a small model of a tree with touch sensors. If you put your hand around the entire small tree and cover all the sensors, all the drives close. Basically, each sensor is mapped to one drive, cover it and the drive closes.
  • \$\begingroup\$ Touch sensor idea makes me think of Christmas tree worms snapping shut when you touch them. youtube.com/watch?v=UW3vDVrs4OQ \$\endgroup\$
    – endolith
    Commented Mar 24, 2010 at 16:31

3 Answers 3


As is goes here is the dirty way. Every CD rom has a eject button right? Rip out the button and directly wire it using whatever input you have.

  • 1
    \$\begingroup\$ This is likely the easiest solution. \$\endgroup\$
    – todbot
    Commented Mar 24, 2010 at 9:41
  • \$\begingroup\$ This was the first solution that came to my mind. It may not be as elegant, but the disc drive manufacturer has really done all the hard work for you (wrt opening the drive). \$\endgroup\$
    – Lou
    Commented Mar 24, 2010 at 12:16
  • \$\begingroup\$ I had a friend in college that did this to one of his drives. It worked great. \$\endgroup\$
    – mjh2007
    Commented Mar 24, 2010 at 14:42

Unfortunately, it's not as easy as just closing a connection on that connector. You need to send a "media eject" ATAPI command over the ATA/IDE bus.


If you don't mind breaking the drives you could simply open it up strip out what you don't need and solder leads directly to the motor that opens and closes the drive. Use an H-bridge like the l293d and you're good to go for control from a microcontroller.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.