Hard Drive Spin Coater




Introduction: Hard Drive Spin Coater

A spin coater made from hard drives.

A spin coater is used to coat a thin film on the substrate. Like a dip coater, commercially produced units are too expensive for the average people to buy, but the operating principle is very simple.

People have tried to make spin coaters using computer fans, but commercial ones needs to spin up to 10,000 RPM or so. For such a high speed, a method is needed to fix the substrate when it's being spun. Gluing the substrate to the rotor is messy and will eventually clog the motor, therefore commercial units uses a specially designed chuck to hold the substrate, either by clamping the substrate or using a vacuum.

A hard drive can spin up to 7200 rpm or even futher depending on the load and the supplying voltage. Using a ESC motor controller (commonly used for driving BLDC motors in quadrotors or UAVs), we can control the rotor speed without building the complicated driving circuit. The hard disk spindle has a non-rotating shaft, which can be used to pull the vacuum we need.

This isn't new, of course,


Step 1: Motor Modification

To hold the sample in place, a vacuum pump is connected to the bottom of a modified motor. The vacuum tubing is glued to the shaft using instant glue.

The hdd motor is drilled through its axis, which is made of hardened steel, and requires the use of a carbide drill bit.

A O-ring is fitted on the rim of the motor.

The O-ring costs 10 cents where I live.

The drill bit is 3mm in diameter and costs about 10 USD.

Step 2: Assembly

ESC handles the control of the motor.

Arduino converts the knob position to PWM and controls the ESC.

Knob position is displayed on the LCD display.

Since I don't have a 3D printer to make the case, I simply used double sided tape.

Step 3: Conclusion

1. Depending on the ESC, you might be able to set different operating modes, breaking on/off, fast/slow startup for the motor.

2. If balanced well, small slides could spin to max speed, which is roughly 8500 rpm for this motor.

3. One should be able to design a better chuck using a larger O-ring and giving more suction.

4. For the first few runs and during drilling of the motor shaft, some bearing oil will spill out due to the heating during drilling or the pressure difference, but it didn't seem to matter to the operation. The suction force is enough to bend a cover slide to the point of breaking.

P.S. : If I get a 3d printer, I'll make a better vacuum connector, sample holder, and a nice casing for it.

I've included the source code for the arduino pro mini. Since I prefer direct programming, the code will be only readable to those who know something about AVR. However if you know how to send PWM, it can be easily done using the Arduino IDE.



  • Metalworking Contest

    Metalworking Contest
  • Tiny Home Contest

    Tiny Home Contest
  • Water Contest

    Water Contest

25 Discussions

Almost finished! Now just to code this beast! Gonna do PID with that IR sensor and have the option to input a speed. This will be my first coding project that actually requires me to write functions and think a little bit! Should be fun.

4 replies

Dear RyanG30.

Please explain and put all the steps along with the related codes on the site to use the members.

And gotta glue on the vacuum adaptor, solder the motor to the esc, attach the battery pack, and build a case for everything

Cool! How is it going?

well, I assembled the entire system before testing the individual components, and I tried to code everything without testing each part of the code, so that was a pretty stupid mistake. Its been going pretty slow, and after a month of trying to program the thing I have decided to go back to just making a servo tester and using something similar to the GaudiLab's hard drive centrifuge. I might also try to get the inturrupt code to work so I can at least have some reading from the tachometer and get a speed from it.

Its worth noting that most drives made after late 90s will have fuid bearing and the bottom of the motor is sealed. Drilling through saft and seals break the bearing and rendering it useless.

Hey so I'm a little confused within the coding for this. These two libraries are included "../library/IC595.h", "../library/LCD.h" but I cannot find them online to import.

Any help would be greatly appreciated.

1 reply

Well, I didn't include the circuit diagram and the libraries for the LCD and IC595. Basically I used a shifting register (IC595) to apply voltages to the pins of the LCD, and I wrote my own library for those.

The connections aren't standard, however you can connect them anyway you want and write your own library.

Great guide, though, no need to use an arduino to generate PWM - I made do with a simple astable 555 based oscillator with fixed period and variable signal width (and of course inverting it throug an NPN transistor as it's more stable near the high end)

In Taichung... Found a local hackerspace that had a Ukrainian Steel Drill that did the trick! I hope that the resistance of the knob dosnt matter when it comes to controling the speed anf interfacing with the arduino! I got a bunch of parts for this and I am going to also attach a diy tachometer.

The hackerlab here has dozens of 3D printers. I am designing a good chuck to fit over the piece now (to allow for more accurate balancing and even suction)

Let me know if you have any files for a case and I can mail the parts to you via 7-11! Alternatively Taipei has a really sweet hackerspace as well...

5 replies

What does a Ukrainian drill look like? :p

I'm now working in Shanghai and I left my DIY stuff in Taipei, so I can't work on that thing now. What are you going to do with it?

google image search 烏鋼鑽

Well I havent quite figured out how to wire everything up yet... When I do I plan on also adding a tachometer to it. There is a gnd on my motor and I dont know which pin it is, I dont know anything about my ESC yet, and I dont know how to wire up the LCD... I want it to just read out speed from the tachometer (I dont think my ESC can tell me the motor speed, its real cheap 12v one).

When I get everything working I plan on making optoelectrowetting chips. I am also working on a maskless photolithography system, which will dual function as the optical control of the chips when they are done. I want to eventually learn how to write an algorithm to teach the system (projector, camera, chip, controls) how to automatically control drops of a wide variety of unknown proporties (such as dropplet viscosities, charge, etc...) simultaneously. I want to be able to make it so it can autonomously assign characteristics to drops and track them, integrating their known properties and the objects already defined with their properties that it learns about them through manipulation calibration. I need to do that to mix, split, and move a wide range of dropplets to begin to automate protocols with other microfluidic modules.
I am making a central processor of sorts...

If your motor has 3 pins then just connect to the ESC, if it has 4 pins, ignore the gnd pin. You can find the ground pin by measuring resistance using an ohmmeter.
the gnd pin would be the center tap .

I'm very interested in the photolithography system, do you have a prototype already? Your project seems crazy, care to share more information with me?

Hey, so I havent made any progress on the lithography system for a while because I have been too busy at work, but essencially I plan on following something similar to http://pages.pomona.edu/~dmt04747/Pubs/MasklessLithoAJP.pdf

Any tips for how you drilled that thing? I have broken two cobalt bits even when using oil and emulsion and spent well over two hours only making about a milimeter of progress...

3 replies

As I mentioned in the article, you need the toughest carbide drill bit. The spindle shaft is made of heat-treated steel that's extremely hard.

I had a professional metalworker drill that thing, he tested with his drill bits and told me I had to purchase a carbide drill bit before he can work on that spindle. The carbide drill bit is fragile and can break if you work too fast, the metalworker worked with a lathe and did it extremely slow.

Its hard to find competent individuals in Taiwan that can do this. I am already on my 3rd hard drive and my second bit. Bloody fingers after trying to take things into my own hands because these other fools keep destroying the motor or completely failing to drill the slightest hole... About to just give up.

I'm also from Taiwan. If you're in Taipei, you can to go 興城街 and find a metalworker there. You can also purchase the carbide (碳化鎢, tungsten carbide) drill bit there, but you might need to speak Chinese because metalworkers in Taiwan are not known for their English ability. I drilled two motors there and everything worked the first time. Good luck!

Nice build! I recently made my own spin coater from a computer fan (as you mentioned in the intro) to coat thin films of C60 on glass substrates. One big advantage to using a fan is the built in encoder that allows you to directly measure the RPM. I really like your design. It looks very robust!