A knitting machine is a machine that produces knitted materials in a semi- or completely automated manner. Knitting machines range in complexity from basic spool or board templates with no moving components to very complicated systems controlled by electronics. Most knitting machines require some form of human intervention to set the desired parameters for each stitch, but some allow all of these decisions to be made automatically. Modern knitting machines are often highly mechanized and use microprocessors to control various functions such as needle selection, yarn feeding, pattern generation and layout orientation. In its most simple form, a knitting machine has a supply of thread or yarn, a needle assembly through which the thread is pulled to make a stitch, and a mechanism that moves the needle across the face of the knit fabric one row at a time. Some knitting machines have more than one thread or yarn supply and several mechanisms that move the needles simultaneously or repeatedly across the face of the knit fabric. Others have complex arrangements of levers, cams, and other mechanical elements that perform similar tasks. In general, the more threads or yarns there are in a single knitting machine, the more intricate the design of the knitted item can be. Knitting was first invented by Lucy Barton in 1866.