Introduction: Dual Automatic Watch Winder

About: Interested in electronics, programming, automation.

I have been always wondering why the watch winder devices are so expensive. Such a tool is, however, necessary especially for guys like me who don't wear their watch everyday. So, I decided to make one of my own, using an Arduino controller.

The basic idea is to use a stepper motor in order to rotate my watches. Moreover, by using the Arduino we can control the rotation frequency.

Here are the basic components I have used:

Step 1: The Schematics

We note that we can use the same power supply (12VDC) for both the Arduino and the EasyDriver. For the Arduino, however, we have to use a step down module in order to achieve an output voltage of 8VDC. Finally, the Arduino is powered via the VIN pin.

Step 2: Programming the Arduino

I use the following simple code in order to rotate the stepper motor in both directions.

int smDirectionPin = 3; //Direction
int smStepPin = 2; //Stepper

void setup(){
  pinMode(smDirectionPin, OUTPUT);
  pinMode(smStepPin, OUTPUT);
  Serial.begin(9600);
}
 
void loop(){

  digitalWrite(smDirectionPin, HIGH); //Set the rotation direction (HIGH is clockwise).
  /*Turns the motor 20000 steps*/
  for (int i = 0; i < 20000; i++){
    digitalWrite(smStepPin, HIGH);
    delayMicroseconds(800);
    digitalWrite(smStepPin, LOW);
    delayMicroseconds(800);
  } 

delay(1000); //Pauses for a second

digitalWrite(smDirectionPin, LOW); //Rotation direction (LOW is counter-clockwise).
  for (int i = 0; i < 20000; i++){
    digitalWrite(smStepPin, HIGH);
    delayMicroseconds(800);
    digitalWrite(smStepPin, LOW);
    delayMicroseconds(800);
  } 

delay(1000);

}

Step 3: Winding Your Watches

The watch winder is finally ready. Time to wind your watches!