— Adrià Navarro @ ITP

Stupid Pet Trick

Here’s the video of our first real assignment for Physical Computing: the Stupid Pet Trick!

My project is a low-fi DJ set made with a PC fan for the scratching turntable, a hacked walkman to play cassette tapes at the desired speed, and an Arduino to map these two. There are also some LEDs to show the speed of the song in another way.

My initial idea was to have the fan acting as input and output at the same time. I intended to have it rotating all time at the speed of the music (output) and let the user slow it down or speed it up to control the song (input). To achieve that, I wanted to read the rpm of the fan through its third wire, as explained in this tutorial, but I didn’t success in it.

I really don’t know the reason. Maybe the fan was broken, maybe I was doing something wrong, but more probably it was because the so-called hall effect only appears at high rpm, not the ones you can produce manually. So I had to think of another trick: use the motor as a generator. This way I can measure the amount of current generated by the manual rotation of the fan. It’s not as accurate, but it’s enough for this project. But be careful when doing this, since you don’t want to plug more than 5V to an Arduino pin! I tested and the voltage generated was really small, but for higher amounts a voltage divider should be used.

Finally, I’d like to comment one of the most delicate parts of the project: the mapping, which is not linear at all. First, the reading from the fan had to be smoothed because it’s really unstable, but not too much to avoid delays between action and reaction. Second, writing the right voltage to the walkman motor became hard because it changed depending on many factors:

  • The minimum voltage needed to start the motor is higher than the one needed to run it when it already started.
  • The amount of current affects the motor even more than the voltage, so analogWrite(150) behaves very differently when the Arduino is plugged to the computer, to a 9V battery or to a power adapter, even you are providing always the same voltage.
  • At a certain voltages, the motor wasn’t powerful enough and produced a very annoying sound.
10 comments
  1. Scratching Analog Audio With a PC Fan says: November 21, 201115:16

    [...] Navarro created this excellent DIY DJ turntable from a junk pile walkman and PC fan. When you rotate the fan with your fingers, the voltage is read [...]

  2. mrx23dot says: November 21, 201116:54

    Nice!
    What about adding an USB to the PC fan, to create a cheap input device for DJ softwares?

    • araid says: November 21, 201118:29

      You can already do that by plugging the Arduino to a computer with the USB. In fact you could plug up to 5 fans, but yeah, maybe creating something more plug&play would be a nice idea!

  3. [...] be in demand on the club scene, but you can save yourself the cost of a pair of 1200s with this DIY analogue turntable made from discarded technology including a cooling fan and a cassette [...]

  4. luke says: November 22, 201109:59

    You may have needed to use amplification to read the “Hall effect” on the motor, but I can’t be sure.

    • araid says: November 22, 201121:40

      Thanks, I’ll experiment more. Also, there are different types of fans and it gets a bit complicated.

  5. [...]  |  Adria Navarro  | Email [...]

  6. [...] adrianavarro Noticias relacionadas:iPhone convertido en un [...]

  7. Turntables Low-Fi Edition says: November 22, 201122:10

    [...] Fuente [...]

  8. illei says: November 29, 201122:59

    contact ? e-mail ? please ? gotta quetion

Submit comment