Regarding the hardware of the IoT mechanical watch winder it was important to me for it to run silently and be made with rapid prototyping tools such as a 3D printer. I found a design I really liked on which I decided to base my own version.
I ordered a stepper motor with a driver from eBay to see how loud it would be during runtime. The motor runs relatively silently depending on speed and commutation approach. The precision of the movement was not important.
I wanted to use an ESP8266-01 for the controller, however I discovered that it really lacks in GPIO. I was able to run the stepper motor (which needed 4 control pins) by sacrificing both GPIO and the serial TX/RX pins, but this required way too many external components (pull-up resistors) and made it awkward to troubleshoot. The ESP8266-12 had a lot more GPIO pins and was barely more expensive, so I decided to use it instead.