If you’ve ever heard a CNC machine or a 3D printer, you know the ‘zip, zip, ziiiiiiip’ sounds it makes are coming from the 3 stepper motors trying to keep up with the chips or hot plastic nozzle. Old hard drives were driven with full size stepper motors, and the sound is a Hollywood staple. New action movies with modern computers will still use the stepper motor sounds for the ‘computer is chugging on something’ sound effect, even though these drives are now 20 years old and computers are silent. Are modern stepper motors noisy? They certainly can be, but it turns out the driver that energizes the two coils in the motor dictates how much noise it makes.
I have been on the hunt for a ‘good value’ watch winder to keep my small collection of modified Seiko watches ready to wear (and for testing). With the requirement that I was going to keep this on a bedside table, it needed to be SILENT. Watch winders are priced at what you would expect for a luxury item that no one really needs, for mechanical watches that can cost a fortune. Good ones are really (REALLY) expensive, and cheap ones are noisy and disposable. The motor and gearing being the point of failure made me wonder about steppers as a replacement. Ziiiiiip?
The next google search brought me to Kevin Darrah’s YouTube channel. Where he was testing out a Trinamic SilentStepStick on his 3D printed watch winder. ‘Bingo!‘ I thought, as his Hamilton spun silently around running a small program from an Arduino. The Trinamic Stepper driver made the motor absolutely silent! But how to build the housing? Even Kevin admits that his CAD was quick and hasty for the mount, and I knew that modeling, printing, and building something like the typical spring loaded holder for the watch was going to be super time consuming and never cost less than a $350 luxury silent watch winder.
What I really needed was a good looking housing, with the cup and watch holder molded plastic, that I could replace the motor, and stuff the electronics inside. A quick Amazon search gave me lots of $40 options, and I’m sure if you were more patient, you could get something in the $25 range shipped from Asia.
I was interested in learning more about stepper motors and controllers. I had a small stack of Arduino Pro Mini clones sitting around, and the stepper motor and driver were going to cost around $30 shipped. Even with $50 of additional parts, this still put me under $100 for a precision software controlled watch winder. Plus a fun two hour hardware project to experiment with Arduino controlled steppers. 😀
- Amazon Watch Winder – $40
- SparkFun Stepper Motor – $15
- Trinamic 2208 SilentStepStick – $8
- Arduino Pro Mini – $10 (already had)
- DC to DC converter (12v to 5v) – $5 (pulled from old project)
- 12v Power Supply – $5 (recycled)
- Aluminum for bracket + hardware ~ $7
- Project TOTAL = $90
Receive intact winder – proceed to tear it apart. As expected, this uses a 5V DC motor powered with a non-UL listed USB power supply. It did have a decent capacitor across the power input on the board, but I was not surprised when I plugged it in and the gear whirring from a hollow box could be heard a few feet away. I removed this and de-soldered the power junctions from the circuit board. I was able to re-use the motor connector, selector switch, and capacitor.
Two things of note: Make sure you have a capacitor across the 12v motor supply side of the SilentStepStick, and connect ALL of the grounds together – including the data side of the stepper driver. At one point, 12v was back-feeding into my 5v Arduino, and let’s not even talk about what happens when you plug that into a USB powered FTDI friend.
I completely removed the battery holder with a Dremel tool, thus giving me a little access panel to mount the Arduino Pro Mini to. A little trimming of the watch cup, some screws, and an aluminum bracket made with the help of a drill and a vise. Some hot glue to keep the bracket from shifting, and the hardware was complete.
After some setup in the Arduino IDE, I was up and stepping! You can really make this as complicated or as easy as possible. I didn’t even connect the data lines to the SilentStepStick. I’m simply using the default setup with only the ‘enable’, ‘step’, and ‘direction’ pins. This means a simple loop drives the motor, and a pin change flips the direction:
for(x= 1; x<1600; x++) //360 degrees
{
digitalWrite(step-pin,HIGH); //Trigger one step forward
delay(4);
digitalWrite(step-pin,LOW);
delay(4);
}
digitalWrite(dir-pin, !digitalRead(dir-pin)); //flip direction
digitalWrite(enable-pin,LOW); //disable motor when resting
Important: Make sure to disable the motor when ‘resting’. No need to keep the stepper energized with 12v turning into heat. My stepper reached about 100F degrees sitting on my desk, and I added a digitalWrite(enable-pin,LOW); during the rest period. Now the highest temps I see are around 80F.
I timed that it makes 6 full rotations in one minute. 25 turns takes a little over 4 minutes (4.16). I then rest for 25.83 minutes (1550 seconds) and do another 25 rotations in the opposite direction. 50 turns an hour = 600 TPD (Turns Per Day). Automatic watches need between 600 – 800 TPD in order to stay wound and ready to go. I utilized the stock selector switch for ‘STOP’, ‘800 TPD’, and ‘600 TPD’ – there are some watches that only wind in one direction, so you could make any program for any number of turns and rotations. One thing I love is that is does ‘exactly’ the number of steps + turns that you specify. So if you place the watch in the 12-up position, days later it will still be in the 12-up position.
Adding a completely silent stepper motor to upgrade an inexpensive watch winder was a lot of fun, completely overkill, and still cost a fraction of a high end watch winder.
Action Video: