3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

HDDJ: Turning an old hard disk drive into a rotary input device

Step 6Schematics and firmware for the HDDJ device

Schematics and firmware for the HDDJ device
For our original DJing project we equipped the hard disk drive with eight additional buttons, six LEDs and a motorized fader to make the HDDJ device. We designed a custom circuit board and wrote some firmware that allowed us to connect all these controls (plus the input from the HDD platter) to a PC via USB. Here you can download the files needed to recreate this design in EAGLE format, plus the firmware that needs to run on the PIC microcontroller (youll need a suitable PIC programmer to do this).

How to test the HDDJ Device

1. Install the driver provided in the ZIP file

2. Plug in the HDDJ to a USB port of your computer (it will mount as a virtual serial connection, and assign it a COM port)

3. Use a terminal program (like Putty) to connect to the COM port, at 115200bps, 8 data bits, no parity bit, and one stop bit.

4. Try spinning the HDDJ platter: you should see a stream of '<' characters appear as it spins counter-clockwise, and '>' characters as it spins clockwise. The frequency of characters will depend on the velocity of spin.

5. Moving the fader will output the character 'f' followed by a number between 0 and 100. To control the position of the fader type the character m into the terminal window, followed by a number between 0 and 100, and then hit return.

6. Pressing the buttons will output the character 'b' followed by a number between 0 and 8. To turn the LEDs on and off type the character l into the terminal window, followed by a number between 0 and 6, and then hit return.

For our project we wrote a bit of software that communicated with the HDDJ via the USB serial line using this protocol. It would be a relatively small (but useful) step to adapt it to, for example, translate the control sequences MIDI messages, which would let you use the HDDJ with generic music or VJ'ing software out of the box.
HDDJ.zip210 KB
« Previous StepDownload PDFView All StepsNext Step »
16 comments
Apr 11, 2009. 6:41 AMSaNjA2659 says:
WANT A PARTS LIST, And can somebody tell me, how can I put files into microcontroller, or can I ask to write files there in a radio shack?
May 16, 2011. 1:37 PMblackbeardlion says:
no you can't bring it to radio shack but you can make your own software using an avr microcontroller and the usb keyboard and mouse library. it's a bit of a task but you could learn allot if your new to microcontrolers
Feb 6, 2011. 5:48 PMoffnot says:
You have to read some books about PIC.
If you are a beginner of PIC, I'll recommand you an easy book.

Add me up as a MSN friend, "staybesideyou@hotmail.com"
Jul 6, 2010. 9:16 AMnatman3400 says:
You need a microcontroller programmer.
May 1, 2011. 6:55 AMMECHOL says:
incomprehensible
Jul 14, 2010. 4:40 PMjhakker says:
I'd pay for one of these !
Jun 14, 2010. 11:58 PMswathisanthu says:
can u pleas send the HDDJ zip which is working pleazzzzzz
May 11, 2010. 1:02 PMproject dude says:
 too cool

May 2, 2010. 11:22 AMdark_angel000 says:
 this thing is awesome ..................................can i have the parts list too ................i sure am gonna try tp make this thing...................thankx
May 7, 2009. 4:48 PMbmxlife says:
can I please have a parts list 2
Apr 23, 2010. 7:58 AMWessinc says:
Hi Hope this helps. Parts list:
Partlist

Exported from hddj-2.0.sch at 4/23/2010 4:52:42 PM

EAGLE Version 5.3.0 Copyright (c) 1988-2008 CadSoft

Part     Value          Device            Package    Library         Sheet

B1                      RB1A              RB1A       rectifier       1
C1                      CPOL-USCT3216     CT3216     rcl             1
C2       0.1uF          C_0805            C0805      rc-master       1
C3       0.1uF          C_0805            C0805      rc-master       1
C4       0.1uF          C_0805            C0805      rc-master       1
C5       470nF          C_0805            C0805      rc-master       1
C6       0.33uF         CPOL-USB/3528-21R B/3528-21R rcl             1
C7       22pF           C_0805            C0805      rc-master       1
C8       22pF           C_0805            C0805      rc-master       1
C9                      CPOL-USCT3216     CT3216     rcl             1
C10                     CPOL-USCT3216     CT3216     rcl             1
D1       BAT64_05       DIODE-2AC|CASOT23 SOT23      diode           1
D2                      D-SMB             SMB        semicon-smd-ipc 1
D3                      D-SMB             SMB        semicon-smd-ipc 1
J1                      PN61729           PN61729    con-berg        1
J2                      MA04-1            MA04-1     con-lstb        1
J3                      MA06-1            MA06-1     con-lstb        1
J4                      MA06-1            MA06-1     con-lstb        1
J5                      MA05-1            MA05-1     con-lstb        1
J6       PINHDR2        PINHDR2           1X02       dongle          1
J7       PINHDR2        PINHDR2           1X02       dongle          1
J8       PINHDR2        PINHDR2           1X02       dongle          1
J9                      MA06-1            MA06-1     con-lstb        1
J10      DC21P          DC21P             DCSKTP     dcsocket        1
J11                     MA04-1            MA04-1     con-lstb        1
L1       FB_0805        FB_0805           L0805      rc-master       1
L2       FB_0805        FB_0805           L0805      rc-master       1
R1       0R             R_0805            R0805      rc-master       1
R2       DNF            R_0805            R0805      rc-master       1
R3       22R            R_0805            R0805      rc-master       1
R4       22R            R_0805            R0805      rc-master       1
R5       470R           R_0805            R0805      rc-master       1
R6       470R           R_0805            R0805      rc-master       1
R7       470R           R_0805            R0805      rc-master       1
R8       470R           R_0805            R0805      rc-master       1
R9       470R           R_0805            R0805      rc-master       1
R10      470R           R_0805            R0805      rc-master       1
R11      1K             R_0805            R0805      rc-master       1
R12      1K             R_0805            R0805      rc-master       1
R13      1K             R_0805            R0805      rc-master       1
R14      10K            R_0805            R0805      rc-master       1
R15      10K            R_0805            R0805      rc-master       1
R16      10K            R_0805            R0805      rc-master       1
R17      4.7K?          R_0805            R0805      rc-master       1
R18      10K            R_0805            R0805      rc-master       1
R19      10K            R_0805            R0805      rc-master       1
R20      10K            R_0805            R0805      rc-master       1
R21      10K            R_0805            R0805      rc-master       1
R22      10K            R_0805            R0805      rc-master       1
R23      10K            R_0805            R0805      rc-master       1
R24      10K            R_0805            R0805      rc-master       1
R25      0R             R_0805            R0805      rc-master       1
R26      DNF            R_0805            R0805      rc-master       1
R27      10K            R_0805            R0805      rc-master       1
R28      10K            R_0805            R0805      rc-master       1
R29      47K            R_0805            R0805      rc-master       1
U1       PIC18F4550PT   PIC18F4550PT      PQFP-44    dongle          1
U2       LM324D         LM324D            SO14       linear          1
U3       L78MXXCDT      L78MXXCDT         DPACK_3    dongle          1
U4                      L293E             DIL16      texas           1
Y1       4MHz           XTAL/S            QS         special         1

Mar 11, 2010. 7:53 PMMediocreNinja says:
 Im guessing parts list is:

Old HDD disk drive

Thats it?
Jul 4, 2009. 7:39 AMrichardw106 says:
Is there actually a parts list for this project???
Feb 26, 2009. 12:33 PMttopueth says:
My I have the part list, too?? I think this is very cool and impressive. Please send me the part list to ttopueth@googlemail.com or send a PN
Feb 3, 2009. 3:15 AMneocska says:
Nice, but somebody can send to me the part list?
Nov 17, 2008. 9:27 AMMatz says:
Very nice job! I am definitely going to try this.

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
30
Followers
1
Author:nvillar