Music Tape Player

My second NXT creation is a music player that uses the color sensor to read notes from tape.

The notes are encoded using colors. I considered using shades of gray and then using the color sensor in light level mode to read them, but that would require calibration (as the readouts would be dependent on current light conditions in the room) and possibly wouldn't allow for more than 5 or 6 well-distinguishable levels anyway.

Here's the NXC program that the device is running. As you can see it constantly reads the color sensor and adjusts the sound accordingly. Another way of doing this would be to only read the color at certain intervals, which would eliminate the problem that sometimes occurs when the color sensor gets confused during the transition between one color and another. But the current approach has the nice feature that we can have notes of arbitrary lengths (by simply putting a wider or less wide stripe of color on the tape). It also doesn't require any synchronization.

Possible improvements might include:

  • an encoding scheme that would allow for more than five notes
  • a mechanism for stopping the tape at the end
  • a rewinding mechanism
  • a better tune for demonstration



  2. Here is a tune:
    E D C D E E E D D D E G G E D C D E E E D D E D C
    (Mary Had A Little Lamb)

    I hope that's helpful.

  3. are there construction steps available for this tape player?

  4. and program too please