555-driven electronic printable spinning wheel


This is an electronic spinning wheel design I printed on my Prusa Mendel 3D printer. In addition to the printed parts, it uses 3 608 bearings, some screw-mount hooks, a NEMA17 stepper motor, a Pololu stepper motor driver, and a 555 timer chip. The entire setup is mounted on a piece of MDF board, with some wood pieces on top to give the axle mounts a bit more height. A lot of inspiration for the design came from the mechanical assemblies used in the RepRap project.

Spinning wheel and yarn


I set out to design a spinning wheel some months ago, and was thinking of a CNC routed wooden construction, similar to traditional spinning wheels. I made some close observations of the mechanics of spinning wheels and realised the bulk of the machine is the flywheel that drives the bobbin, and the only reason it's so large is to generate an even rotation. One of the trickiest aspects of spinning is timing the steps on the treadle so that you get a nice, even pull. Precise and regular timing is what a 555 is made for. And why not replace the stepping person with a stepping motor? Armed with those thoughts, I scrapped the whole design and turned to one of my favorite tools, the 3d printer. I used OpenSCAD to design a multipart model, printed it and put it together.
Here is the OpenSCAD source code for the design.

Mechanical construction

The machine consists of two end pieces, a bobbin, and an arm ("flyer" in spinning terms I believe) with ten hooks attached to it. The arm and the bobbin are coaxial, but can rotate independently of each other. To make this possible, the bobbin is mounted on a pair of bearings that ride on an M8 shaft. The shaft is fixed to the arm's base, and held by a bearing on one end, and by the arm itself on the other end. The arm rotates in a groove set into the front end piece. A knitted length of I-cord, with adjustable tension (using an M4 bolt for adjustment) holds the arm in the groove. The end of the arm has an offset diagonal hole through which the yarn is fed into the machine.
The rear end piece holds a NEMA17 stepper motor which is coupled to the bobbin with a pair of herringbone gears. A herringbone gear is a mirrored pair of helical gears, and its self-centering property prevents the bobbin from moving along the shaft more than desireable.

Herringbone gears


The electronics consist of a 555 timer and a Pololu stepper motor driver. The timer sets the step frequency and controls the speed of the motor. The reason to use a stepper instead of a DC motor is that with a stepper, even slow step rates can generate high torque, so the motor can be slowed down to an arbitrary speed without affecting its power output significantly. The 555 is configured in astable mode, acting as a pulse generator. A potentiometer is used to set the step frequency. R1 is fixed at 330 Ohm, R2 is a potentiometer varying between 0 and 4.7kOhm in series with a 330Ohm resistor. The frequency setting capacitor is 0.22uF. This allows for a good range of speeds for spinning various fibers when the Pololu stepper motor driver is used in 1/8th step mode. I designed the schematic below around the version of the Pololu stepper motor driver with onboard voltage regulators. Since I only had a regulatorless driver free and handy, I also put in a 7805 voltage regulator salvaged from a dead scanner. The same scanner was the source of the 12V wall wart and the barrel connector socket I used. In the schematic, JP5 is where the potentiometer attaches to, DIR is a switch that reverses motor direction when closed, and POWER is an SPDT power switch.

Circuit diagram of the spinning wheel controller

Spinning wheel controller


Here is a short video of it spinning some yarn:


My name is Kliment Yanev, Kliment on freenode IRC, and first name dot last name at gmail