I am currently getting started on a small thread winding machine, which would allow me to wind an approximately accurate length of string or thread from a big spool to a small spool or card.
I have a few different ideas and there is one project on youtube, which however requires a lot of 3D printing.
One general trouble I have is that I have no real idea how to measure the amount of thread being spooled. If I just measure according to the rotations of the spool being spooled onto, this wouldn't at all consider the spool getting thicker with the thread already on it. If I run it through a pulley and measure the rotations there, this would be highly dependent on enough tension and friction being present at all times to turn it. I am not sure if an optical solution or similar exists as a component for a microcontroller that could be used.
HalcyonKnights t1_itpx98g wrote
Make your measuring "pulley" more of a flat-sided barrel and wrap the thread around it a few times before it goes onto the spool. That will maximize the friction and keep it moving, but keep the thread on a single layer where the diameter wont change your measurement. If you are 3D printing (or even if not) you can get really cheap skateboard bearings that you can put into the design too if you need to, especially if it's thin thread that ends up breaking on you. A separate, adjustable tensioner (spring or weighted, maybe) would probably be a good idea too.