HDDJ: Hard Drive As Rotary Input


[nvillar] wanted a relatively cheap way to make a rotary input device for audio mixing. After looking at several options including turn tables and professional audio scrubbers, they decided on the hard drive due to its size, price, and the feel of the disk. The geek factor of using a hard drive as an input device probably didn’t hurt either. They provide schematics and details on how to make it all work. There’s a video after the break of the unit sending signals to a computer. No performances though, sorry.


24 thoughts on “HDDJ: Hard Drive As Rotary Input

  1. This kicks ass. What was that “big volume knob” USB device they were selling earlier in the year? A the time, I didn’t see the point, but if I could have a “big volume knob”/jog dial that was made from a hard drive, things might be a bit different…

  2. How accurate is this? If you move it ultimately slow or fast is it still detected just as well?

    I dont think you guys provided enough details for the device to be easily replicated.

    Awesome, tho it is the same thing as;
    ‘Dm2 Mixman’ USB/Midi toy $5-$25 USED/NEW Ebay
    -has 2 jog wheels,1 fader,analog 3d knob,cue buttons,start/stop buttons and say 10 programmable buttons.

    Since the advent of USb2Midi it can be used with any midi application. Reason,Audacity,Even Pro Tools

    What about all the various USB mouse hacks that endup providing you with the same thing.

  3. As one of the guys who made this let me answer a couple of your comments.

    @Vlado: why not just buy a cheap DJ console?
    Because it was a fun project to do, because it was cool to reuse an old dead HDD for a purpose far far from what it was originally intended for.

    @Reezy: we never really tested its accuracy. It had a bit of a problem at low speeds, below a certain angular velocity the spindle motor no longer generates any output, which is unfortunate. As for high speeds, these things are design to spin hard disk platters at 5400 or 7400 RPM so should be accurate!

    Also, Reezy, what other details do you think we need to supply? Cause I’d be happy to add more info to the instructable.

    Anyway, it was a fun project, and is easy to do if you have a HDD lying around.

  4. hey! i tried my hand at the same exact thing a couple weeks ago:
    interfaced it to the computer as a hid mouse. it worked better than i had predicted, but i concluded it would not work for “digital viynl scratching”. i needed to spin it about 1/2 revolution before it could register direction and speed. for the intended purpose, it would need to register accurately with short moves of like 10 degrees. perhaps i gave up too soon, i will look into your code. check out mine. :)

  5. @charlie: Looks like they didn’t have any better luck than you did. From their PDF write-up: “While suitable for our requirements, the HDD solution does have some limitations: chiefly, it requires some amount of spin, above a certain threshold, for the motor to output measurable signals. As a result it is not possible to detect small ‘scratch’-like movements, and as such is not a replacement for a digital turntable.”

    That’s kind of disappointing. I was hoping to find some thing with more precision than my Hercules RMX without breaking the bank.

  6. Neat project. You won’t be able to (easily) get more accuracy out of the spindle motor detection method, but you could easily add a fairly simple reflective optical encoder to the bottom of the platter. Use either quadrature or multibit gray coding and a few LED/photodiode pairs and you can probably get a few degrees accuracy out of it, and parts are cheap.

  7. Dude yesterday after being inspired by this and other projects I went our and bought a mouse, took off the top casing and glued it into the shallow part of a CD drive case, then I removed the motor from that same CD drive, glued a CD onto the CD holder attached to the motor and then I glued the motor to the shallow piece of CD casing so that the edge was running on top of the mouse scroll wheel. After I found out that the wheel was constantly pressed into the middle button I disconnected that button. The only thing that the HDDJ project seems to have that this doesn’t is awesomer software potential and ability to “glide” (altho that function could be implemented in software or with a more carefully chosen mouse and a weighted CD).

    I could not believe how well this little project worked out. Thanks for the inspiration.


  8. Nice. But you won’t need a microcontroller to detect the rotation direction. I was looking at the waves and I noticed the blue wave is always out of phase with eiter the red or the yellow wave. So: Just make two additions: Add blue+yellow plus blue+red. Now you have two outputs. If it rotates in a certain direction, it will cancel on one output, and produce a wave on the other. This will be both amplitude and frequency ‘modulated’. If you feed this into your computer over the audio-in, you can use an aplitude follower to obtain a number, or filter it with a 20Hz LPF to obtain an audiorate number.

  9. Sorry to bring up an old post, but I just HAD to reply to the dumb question above.

    “Nice stuff tough why the hell not just buy a cheap DJ console , a good one is about 200-300$ , tough you could scrounge one up on ebay for 100 bucks.”
    Posted at 2:56 pm on Nov 12th, 2008 by Vlado

    To answer this question, i’ll tell you a few GOOD reasons why.

    First off, science. We wouldnt be where we are today if it wasnt for people learning of new ways to do things and at cheaper prices.

    Second, as I mentioned above, the price.
    Not everyone has $100 to just spend on a machine that does ONE thing and ONE thing only.
    If this project was corrected enough, it could be an open source project, which could lead to this nifty device being used for MULTIPLE things.
    For example, what about using it for volume control as well?
    All you would need is a cheap (perhaps non-working) hard-drive which would only be a few dollars if not free in some cases. Saving you easily a few hundred dollars.

    Once again, sorry for reviving and old post, but questions like this in the science community just make me cringe. After all – last time I checked this is a website devoted to purely learning, isnt it?

    Perhaps people shouldnt be so worried with ‘why’ things happen or ‘why’ people do what they do, and just accept it for what it is.

    To comment on this project, I think its awesome, keep up the good work fellows.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.